package com.xiaozheng.mybatis.SqlSession;

import com.xiaozheng.mybatis.SqlSession.defaults.DefaultSqlSessionFactory;
import com.xiaozheng.mybatis.cfg.Configuration;
import com.xiaozheng.mybatis.utils.XMLConfigBuilder;

import java.io.InputStream;

/**
 * @Package: com.xiaozheng.mybatis.SqlSession
 * @ClassName: SqlSessionFactoryBuilder
 * @Author: 小政同学    QQ:xiaozheng666888@qq.com
 * @CreateTime: 2020/8/27 23:46
 * @What_is_this_file_for: 用于创建一个SqlSessionFactory对象
 * @Description: 构建者
 */
public class SqlSessionFactoryBuilder {

    /**
     * 根据配置文件的字节输入流来构建一个SqlSessionFactory工厂
     * @param Config
     * @return
     */
    public SqlSessionFactory build(InputStream Config) {
        //用于解析配置文件
        Configuration cfg = XMLConfigBuilder.loadConfiguration(Config);
        //把解析的信息给DefaultSqlSessionFactory
        return new DefaultSqlSessionFactory(cfg);
    }
}
